===================-====================+++=+==--:.:-..-+-+++===+**#*
=------===========------------::::------==+-=:+-.==-.=-=::==++=*=+*#*
:::---======++++++=====================++*+-+*#++#-:+#=-.:=++*#***###
-::---===+++++++++++*+*++===**+=-:---=+#*+++*##**#+*##*-=+**####*####
==+++++=:-+**######**********+=--:-==+##*==###%##%##*#=--*%###*+##*##
*****+=-:..:=*########**###***********###*+*++*##%%%++-:-*###***#####
###+---+=+*****########%#%#******#***********************%######*##**
############**######%#####******##****************++********#*****#*#
%##%%######**##########*********#*##***********************########*#
%%#%%%###############**#**********###****************##########*****#
######*##*#########*************+++*###########*****#******###******#
##############***#********#******#####******************************#
#############**************##******#********************************#
####******##********************#**##***+***************************#
#**##***####************************#*****++++**********************#
****#####************************++**********++++++*****************#
**##***##*********************++*********#*******++++++*************#
###**##*************************+*******************+++==+++********#
##********************************++++******###*********+++==+++*****
#********************#####************++*******#********++++++++=+++*
************+++****#######**************+********#****+++++++++++++=+
************+++***#####*##*************************#****+++*******++*
%#%##############%%%%%%#%%##########################%%%#############%